High speed modem

ABSTRACT

A modem is disclosed having a data transmission protocol involving lower-speed, full-duplex operation during the connect sequence with a remote modem and an automatic switch to higher-speed, half-duplex operation for data transfer. Further, the modem data transmission involves transparently changing between lower-speed, interactive operation and higher-speed operation based upon data transmission demands. The operation is controlled by a processor monitoring the contents of a transmit data buffer and providing a mode control command to the modem transmitter. The modem also adapts its speed to the quality of the telephone line by fallback or fallforward to a different speed based upon predetermined data frame retransmission criteria.

This is a divisional of application Ser. No. 909,012, filed Sept. 18, 1986, now U.S. Pat. No. 4,771,417.

BACKGROUND OF THE INVENTION

The present invention relates to apparatus for communicating data over a telephone line; and more particularly, it relates to apparatus employing a communication protocol involving both higher-speed, half-duplex and lower-speed, full-duplex operation based upon data flow demands.

Communication of data over a telephone line is accomplished by devices that transform a typical two-level digital computer signal into a form suitable for transmission over the telephone network. For example, the two-level signal is converted into a two-frequency sequence of signals. The conversion involves modulation at the transmitting end of the line and demodulation at the receiving end of the line. Devices providing these modulation/demodulation functions are referred to by the acronym "modem".

A modem is typically inserted between a data terminal and the telephone line. A modem is, therefore, a two-port device having a first interface to the data terminal and a second interface to the telephone line. Control of the modulator/demodulator functions can be by a control circuit on either side of the interface to the data terminal. Control codes for modem operation may be provided from the data terminal to a control circuit via the interface. Typically, the control codes will be embedded in the serial data stream from the data terminal. A control circuit coupled to the interface receives the control commands and acts based upon them to generate control signals for the modulation/demodulation functions. Alternatively, the data terminal may generate the control signals for the modulation/demodulation functions.

In order to send digital data between transmitting and receiving locations, a carrier signal is modulated based upon the data values to develop a transmit signal. Telephone lines have a limited bandwidth for signal transmission. The term "bandwidth" refers to the range of transmit signal frequencies which can be passed without significant attenuation. The range of frequencies of a transmit signal, and thus the amount of bandwidth of the telephone line occupied, is dependent upon the baud rate at which data is being sent. As the speed of data transmission increases, the amount of available bandwidth occupied also increases.

Typically, data transmission rates over telephone lines will be 300, 1200, 2400, 4800, 7200 or 9600 bits per second ("bps"). At the fastest speed of 9600 bps, essentially the entire bandwidth is occupied by the transmit signal frequencies. For two way communication between data terminals, half-duplex operation is typically used. This involves each modem alternately placing its transmit signal on the line. At the slower speeds, less of the total available bandwidth is occupied. The total available bandwidth can be separated into upper and lower frequency bandwidths. By selecting separate carrier frequencies, the transmit signals will occupy separate bandwidths. This allows both transmit signals to be placed on the line at the same time for two way communication. Such communication is referred to as full-duplex operation.

The required communication speed is generally dictated by the data transmission demands of a particular application. For the transfer of files of data between data terminals, high speed data transmission is demanded to reduce the required time the telephone line is in use. For interactive communication between data terminals, full-duplex operation is desired. In some circumstances, there is the desire to both send data files and to have interactive communication. In such circumstances, the call connection often must be terminated and reestablished in order to change between operation protocols. Alternatively, time-consuming command exchanges must be made to reverse the communication roles or "turn the line around."

There is a need for higher-speed data transmission over dial-up telephone lines while retaining a full-duplex appearance at the data terminal interface. Further, there is a desire for error control along with maximum thruput and minimum echo character delay. However, economic considerations also are of concern.

Full-duplex, 9600 bps communication can be achieved using echo cancellation per V.32 standard. This solution is expensive because of the complex apparatus involved. Other approaches include fast poll, half-duplex operation using a single channel multiplexer in accordance with the V.29 standard. This operation involves line turn-around to get a minimum echo delay but does not achieve maximum thruput with error control. Alternatively, slow poll, half-duplex operation can be used but minimum echo character delay is not achieved.

The present invention economically provides the desired higher-speed data transmission and satisfies the full-duplex appearance, error control and minimum echo character delay requirements.

SUMMARY OF THE INVENTION

In one aspect of the present invention, data transmission automatically changes from lower-speed, full-duplex operation to higher-speed, half-duplex operation based upon data transmission demands. The transmission mode transparently changes from a lower-speed, interactive mode to a higher-speed data transmission mode as data transmission demands dictate. In accordance with this aspect of the present invention, during the handshake sequence between calling and answering modems, operation is in the lower-speed, full-duplex mode. When a large amount of data is to be sent, as in a file transfer, transition is made to the higher-speed mode.

In accordance with the present invention, a transmit data buffer is monitored. The lower-speed, full-duplex transmission mode is maintained until the buffer contains a predetermined number of characters. Operation then switches to higher-speed transmission. The transmitter is selectively operable in either a lower-speed, full-duplex mode or a higher-speed, half-duplex mode.

In another aspect of the present invention, data communication automatically changes between lower-speed, full-duplex operation and higher-speed, half-duplex operation based upon data transmission demands during a communication. In accordance with this aspect, during interactive communication, operation is in the lower-speed, full-duplex mode. When a large amount of data is to be passed, operation is changed to the higher-speed, half-duplex mode.

In yet another aspect, the present invention provides for incremental changes in the speed of data transmission based upon determinations of data transmission error. In accordance with this aspect, data transmission speed is adapted to the quality of the telephone line as determined by the extent of data retransmissions. Frequent data retransmission directs a fallback in speed. As the number of errors is reduced, the data transmission can fall-forward in speed.

BRIEF DESCRIPTION OF THE DRAWINGS

A written description setting forth the best mode presently known for carrying out the present invention, and of the manner of implementing and using it, is provided by the following detailed description of an illustrative embodiment represented in the attached drawings herein:

FIG. 1 is a generalized block diagram of a modem in accordance with the present invention;

FIG. 2 is a functional diagram of the telephone line interface;

FIGS. 3 and 4 combined provide a functional diagram of the modem more generally diagrammed in FIG. 1;

FIGS. 5a-b, 6a-c, 7a-b, 8a-b and 9a-b are detailed schematic diagrams of a modem implementation of the present invention.

FIG. 10 is a diagram illustrating the connect sequence for the modem of FIGS. 1-4;

FIG. 11 is a flow chart diagram of an operational sequence of the modem of FIGS. 1-4 involving lower-speed, full-duplex linking of the modem and subsequent higher-speed, half-duplex data transmission;

FIG. 12 is a flow chart diagram of an operational sequence of the modem of FIGS. 1-4 involving data transmission that automatically changes between lower-speed, full-duplex and higher-speed operation based upon data transmission demands during a communication and the quality of the transmissions; and

FIGS. 13.1 to 13.51 is a listing of the program ROM contents of the implementation of FIGS. 5-9.

DETAILED DESCRIPTION OF AN ILLUSTRATIVE EMBODIMENT

Referring to FIG. 1 of the drawings, there is presented a generalized functional block diagram of apparatus for implementing the present invention. The apparatus provides for communication of data and control commands over a telephone line to a remote site. The apparatus of FIG. 1 provides a data communication unit which generally includes a data terminal 1, an RS-232 interface 2 (port 1) and a modem 3 coupled by a hybrid circuit (port 2) to the ring (R) and tip (T) conductors of a telephone line 4. The RS-232 interface refers to a standard established by the Electronics Industries Association which defines the signal interface couplings between data terminal equipment and data communications equipment employing serial binary data interchange. As used herein, the term "data terminal" refers to any external device having an RS-232 interface for providing or receiving digital data. In particular, the data terminal may be a computer, including any of the so-called "personal computers." However, the data terminal may be a printer or an information display system. Further, a parallel interface may be used and such would be fully functionally equivalent to the serial interface in the context of the present invention.

The general function of the modem 3 is, of course, to send and receive digital data. The modem accepts digital data from a data terminal and places a transmit data signal on a telephone line for communication to a remote modem coupled to a data terminal. The transmit data signal is an analog signal obtained through modulation of a carrier by a digital input. During data communication to a remote modem, the transmit data signal will contain data from the data terminal which has been encoded into the appropriate signal structure according to the applicable Bell Telephone or CCITT standards. It is to be understood that the modem also places signals on the telephone line that allow the answering modem to link with the originating modem. This involves communication of a number of parameters that allow the receiver to establish carrier detection, adjust automatic gain control circuits, establish timing synchronization, converge and adapt the equalizer to the initial line conditions, and synchronize the descrambler. Also, in the initial linking procedure, referred to in the art as the "handshake" sequence, tones will be placed on the telephone line.

In addition to accepting digital data from the data terminal for communication, i.e., TXD, and providing received digital data to the data terminal, i.e., RXD, there may be an exchange between the modem and the data terminal of various control signals such as data terminal ready (DTR), request to send (RTS), data set ready (DSR), clear to send (CTS) and Carrier (CXR). The various exchanges between an originating modem and an answering modem in the handshake sequence and in linking are well known to those of skill in the modem art. Similarly, the various exchanges between a modem and the data terminal to which it is coupled including the above-mentioned DTR, RTS, DSR, CXR and CTS signals are also well-known to those of skill in the modem art.

In the modem shown in FIG. 1, a control circuit in the form of a processor is provided to direct the overall operation of the modem and execute a sequence of instructions to control the various elements of the modem. The processor includes a central processing unit (CPU) 12 and a program read only memory (ROM) 14. The program ROM 14 contains instructions for directing the various operations necessary to effect the overall operation of the modem. The CPU obtains instructions from the ROM 14 and interacts with the various modem elements over a data bus 16 and an address bus 18. CPU 12 is coupled to the data bus by a data bus buffer 20. Similarly, the CPU is coupled to the address bus by an address bus buffer 22. An input latch 24 is also coupled to the data bus and receives inputs to be obtained by the CPU during the course of its operation. Among the inputs are those of DTR and RTS received from the data terminal through the RS-232 interface. An output latch 26 couples to the data bus and permits the CPU to place output information to elements requiring command code inputs. Also, among the outputs from the CPU handled by the output latch 26 are the DSR, CXR and CTS outputs to the data terminal.

As will be appreciated, the control circuit functions of data control and modem control may be assumed by the data terminal. For example, the CPU in the data terminal may in accordance with appropriate software instructions provide some or all of the functions of data and modem control. Alternatively, a separate circuit, peripheral to both the data terminal and the modem, may be interconnected to provide the control circuit functions.

Further, while the data terminal 1 in the illustrative embodiment provides a local site data source, data for communication may be otherwise provided. Similarly, while communication may be to a remote modem coupled to a remote data terminal serving as a remote data source and receiver, other data receivers are contemplated. For example, the remote modem may be interfaced to a remote data receiver in the form of an information display system such as a printer or character generator for a display device. Moreover, a remote data receiver may include data transmission capability, for communication back to the local site.

The modem 3 in FIG. 1 further includes a transmit data buffer 28 receiving digital data from the data terminal for communication. The transmit data buffer may be physically located on either side of interface 2. Also, the buffer can be within the data terminal or in an interconnected peripheral. The data is routed through serial I/O device 40 onto the data bus 16. Digital data from the transmit buffer is provided via serial I/O device 40 to a transmitter 30. The transmitter is selectively operable to transmit in either a higher-speed, half-duplex mode or in a lower-speed, full-duplex mode. Selection of the particular mode of operation is under the direction of the processor. The transmitter output is coupled to the ring and tip conductors of the telephone line by a hybrid circuit 32. Coupled to the hybrid circuit 32 is a receiver 36. The receiver is capable of receiving at various data rates and in various modes. Selection of one of the receiver outputs is made by a multiplexer 38. The serial interface circuit 40 under the direction of the processor provides received data for passage through the RS-232 interface to the data terminal.

Although the operation of an implementation of the structure generally diagrammed in FIG. 1 will be presented, a summary overview of the operation of the diagrammed modem should be mentioned to aid in understanding the description which follows. In operation, the transmit buffer holds data from the data terminal. The transmitter receives data from the transmit data buffer and places a transmit data signal on the telephone line. The transmitter is selectively operable in either a lower-speed, full-duplex mode or a higher-speed, half-duplex mode in response to a mode control command from the processor. The processor monitors the amount of data being held in the transmit data buffer and produces the mode control command to the transmitter to establish the mode of transmitter operation based upon the amount of data in the transmit data buffer. If the data transmission demands of the data terminal are such that the transmit data buffer does not fill rapidly enough to require the higher-speed operation, the processor selects the lower-speed, full-duplex mode of transmission. However, with such operations as file transfers or full-screen applications when data is required to be rapidly transmitted, the lower-speed mode cannot prevent the buffer from rapidly filling. When the processor determines that a predetermined number of characters is reached in the transmit data buffer, it directs the transmitter to enter the higher-speed mode of operation. When the data transmission demands decrease, the processor so determines and can direct the transmitter to enter the lower-speed mode. Also, during the connect sequence between an originating modem and an answering modem, the initial exchange of link parameters and other required control frame exchanges proceeds with the transmitter being directed to operate in the lower-speed, full-duplex mode. When the modems have been linked and data communication ensues, the processor directs the transmitter to operate in the higher-speed, half-duplex mode.

Referring next to FIG. 2, there is presented a functional diagram of the telephone line interface and power supply circuits. The power supply (not shown) is conventional and provides voltage levels of +12, +5, -12, and ground. The power supply output is applied to power supply filtering circuits to obtain the voltages for operating the various circuit elements. The hybrid circuit 32 is shown to receive the analog signal to be placed on the telephone line. This signal is provided over conductor 33. The analog signal is applied to an isolation line transformer 52 having protective diodes 53 and filter capacitor 54 connected across its terminals. The transformer is coupled to the tip and ring conductors of the telephone line connector by a hook control relay 56. Also connected to the tip and ring conductors is ring detect circuit 58.

An incoming signal is routed through the line transformer and hybrid circuit to separate signal paths 60, 61, and 62. Signal path 60 includes a gain stage 63 and equalizer circuit 64. Signal path 61 includes gain stage 65. Signal path 62 includes bandpass filter 66 and envelope detector 67. The outputs of the signal paths are variously applied to the circuitry shown in FIGS. 3 and 4.

With reference now to FIGS. 3 and 4, there is presented a more detailed functional diagram of the modem which is generally diagrammed in FIG. 1. The embodiment being described utilizes a microprocessor as the control circuit. Accordingly, there is provided a data bus 70, an address bus 72, and the control bus 74. The CPU 80 is coupled to the data bus by data bus buffer 82 and coupled to the address bus by address buffer 84. Coupled to the data bus are input latches 86, 88, and 90. Latch 86 accepts and holds signals from the data terminal interface. Latch 88 holds various internal modem signals. Latch 90 holds various inputs from the front panel switches. The latch enable signals are provided from decoding circuits 92 which is coupled to the control bus 74 and address bus 72.

The program for execution by the processor is contained in program ROM 94. This ROM is addressed by addresses output from the CPU over the address bus 72, and the ROM contents are provided to the CPU over data bus 70. The selection of the ROM is also under the direction of the CPU through decoding circuits 92.

Digital data from a data terminal for communication is placed in the transmit data buffer which includes random access memories 96 and 98. Additional random access memory storage is provided by random access memory 100. This memory is a nonvolatile memory that stores information such as telephone numbers and other information which is historical. A battery circuit 102 maintains the contents of RAM 100 during the time power is off. Also, during the time of resetting the processor, battery circuits 102 disables RAM 100.

Turning now to FIG. 4, the higher-speed transmit and receive functions are performed by a combined transmitter/receiver device 104. This device is suitably an R96FAX system available from the Semiconductor Products Division of Rockwell International Corporation. Device 104 is coupled to the data and address busses in order to receive directions as to the configuration for the operation desired. Serial digital data for serving as the modulating signal is provided to device 104 on the TXD line 105. The serial digital data is routed through a multiplexer 106. Referring again to FIG. 3, the TXD signal is obtained from serial input/output device 110 through switch 112. Device 110 is coupled to the data bus and receives frames of data from the data buffer random access memories 96 and 98 under the direction of the CPU. Digital data from the data terminal is provided through the RS-232 interface and applied serially to device 110 for conversion to parallel form. The CPU directs the parallel-form data from device 110 to data buffer random access memories 96 and 98. The CPU monitors the data frames being placed in the data buffer and keeps a running tabulation of the amount of data being placed in the data buffer. In a synchronous mode of operation of the transmitter, the TXD serial data stream from the RS-232 interface is passed around device 110 over line 114 and applied through switch 112 to multiplexer 106. It is only in the asynchronous mode of operation that the CPU directs data to be communicated through the serial input/output device 110.

Returning to FIG. 4, the transmitter further includes a lower-speed, full-duplex transmit and receive device 116. The serial data stream TXD is applied to the lower-speed transmitter/receiver device 116 from multiplexer 106 over signal path 118. Control of the lower-speed device 116 is provided by the CPU. Configuration and control instructions are placed in output latch 120 and provided to device 116.

The R96 FAX system implementing device 104 is a slow turnaround device. The use of the full-duplex device 116 provides fast carrier acquisition and link management. The fast carrier acquisition facility in combination with the high data throughput facility provides the desired high-speed data transmission over dial-up telephone lines and a full-duplex appearance at the data terminal interface.

As further shown in FIG. 4, the modem includes a dual tone multifrequency (DTMF) generator 122 which provides tones for dialing. Device 122 is controlled by the CPU with control commands placed in output latch 124. The analog transmit signal from the lower-speed transmitter 116 is applied to an amplifier 126. The output from tone generator 122 is also provided as an input to amplifier 126. The output of amplifier 126 and the analog transmit signal from higher-speed transmitter 104 are applied to a buffer amplifier 128. The output of amplifier 128 is the modem transmit signal applied over line 33 to hybrid circuit 32 in FIG. 2.

Further included in FIG. 4 is a set of drivers 130 providing signals to the RS-232 interface. Certain of the signals provided to the drivers are obtained through output latch 132 which is loaded through the data bus.

Another output latch 134 connected to the data bus provides controls for the front panel light-emitting diode displays 136.

Referring again to FIG. 2, the receive signal paths 60 and 61 provide the transmit signal from a remote modem to the lower-speed and higher-speed receiver portions, respectively. The signal RXA shown in FIG. 4 is being applied to device 104 which yields the receive signal on line 140. This signal is applied in FIG. 3 to multiplexer 142. When selected by multiplexer 142, the signal on line 140 is applied to the serial input/output device 110. The CPU may obtain received data from device 110 or direct passage of the serial data onto switch 144. The output from switch 144 is applied through driver 146 to the RS232 interface as the receive signal RXD.

Referring again to FIG. 4, the receive signal from signal path 60 in FIG. 2 is applied to the lower-speed device 116. The receive signal from device 116 is provided over line 148 to multiplexer 150 in FIG. 3. The output of multiplexer 150 is applied to the input of the serial input/output device 110. The CPU acquires the receive signal data to descramble it and provide it back through device 110 to line 143 to become the RXD output to the data terminal interface.

A counter timing circuit 160 is controlled by the CPU. Device 160 includes timers which can be turned on or off by the CPU. Device 160 generates the various baud rate timing signals for the serial input/output communication device 110 from the T0 output over line 161. Another timer in device 160 provides a signal from output T1 over line 162 to multiplexer 164. When line 162 is selected by the multiplexer to be applied to device 110, the signal is provided to device 110.

Referring now to FIGS. 5a-b, 6a-c, 7a-b, 8a-b, 9a-b, 10, 11, 12, and 13.1 to 13.51, there is presented a detailed implementation of the modem diagrammed in FIGS. 1-4. This implementation corresponds to the Racal-Vadic Model 9600 VP modem product.

The 9600VP is a triple speed switched network modem that a user can operate at 9600 bps, 1200 bps, or 300 bps asynchronously, as well as 9600 bps, 7200 bps, 4800 bps, or 1200 bps synchronously. The 9600VP provides full-duplex terminal operation in all asynchronous modes and 1200 bps synchronous. Operating synchronously, the 9600VP provides half-duplex terminal operation at 9600 bps, 7200 bps, or 4800 bps. Modem operation includes a link protocol which involves dynamically switching between a full-duplex, lower-speed mode for data acknowledgments and interactive transfers, and a half-duplex, higher-speed mode for data transfer. If the modem can keep its transmit data buffer from filling using the lower-speed mode, it will not go to high speed. However, in a screen oriented application, or for file transfers, the modem cannot keep the buffer from filling and as the predetermined number of characters is reached, the higher-speed mode is entered, emptying the buffer at 9600 bps, while the far end transmitter buffers its data. The modem then drops back to the lower-speed mode for acknowledgement. This operation repeats based on data transmission demand. Switching between modes is transparent to users in all cases where the transmitted data is distributed unevenly or asymmetrically (i.e., more data from one end than from the other end). Asymmetrically distribution of data is typical of most applications, except for some mainframe file transfer applications and multiplexer applications.

CCITT V.29 and V.27 modulations (9600, 7200, 4800 and 2400 bps) are used for the higher-speed, half-duplex mode, and Bell 212A is used for the full-duplex, lower-speed mode. The modem also conforms to Bell 212A and 103 standards. The modem includes, among other features, full-duplex emulation, a superset MNP error correction protocol, data compression/decompression, automatic speed detection, as well as fall-back and fall-forward operation from 9600 asynchronous mode, speed conversion, auto dialer command sets, front panel operations, and auto answer/originate. Automatic origination is accomplished by an integrated automatic dialer operated from the data terminal keyboard, the modem front panel, or communication software for unattended operations.

The modem is packaged in a VIP II standalone case having membrane switches, an LED display, and jacks for detachable interconnection of programmable line connections, RS-232 interface, and power cables.

Connection of the modem to the Data Terminal Equipment (DTE) is through an EIA RS-232 interface. The interface connections according to connector pin number are as follows:

    ______________________________________                                         PIN    SIGNAL                                                                  ______________________________________                                          1     Chassis (Protective) Ground (FG):                                              This is protective ground, tied to the AC power                                ground of the terminal equipment and is isolated                               from the signal ground (Pin 7; SG) unless                                      optionally strapped.                                                     2     Transmitted Data (TXD): (To Modem)                                             Signals on this line are generated by the Data                                 Terminal Equipment and transferred to the modem                                for transmission to the Remote Data Terminal                                   equipment. The modem will transmit accept data                                 from this line when an ON condition is present                                 on the CTS line.                                                         3     Received Data (RXD): (From Modem)                                              Signals on this line are generated by the modem                                receiver in response to signals transmitted by                                 the remote modem except when the modem is in a                                 test mode. This line is clamped to "MARK"                                      whenever the CXR circuit is OFF.                                         4     Request to Send (RTS): (To Modem)                                              The signal on this line is normally generated by                               the DTE for use in half-duplex modems. In                                      synchronous 9600, 7200, 4800 bps modes, an ON                                  condition of the circuit is an indication to the                               local modem that the DTE wishes to send data.                                  After the RTS circuit is turned ON, the DTE                                    waits for an ON condition of the CTS circuit                                   before starting transmission. In 212/103/9600                                  full-duplex operation, if RTS circuit is ON, CTS                               will go ON.                                                              5     Clear to Send (CTS): (From Modem)                                              An ON condition of the CTS line indicates to the                               terminal equipment that the modem will transmit                                any data which is present on the TXD line. CTS                                 is turned ON in response to an ON condition of                                 the RTS line from the DTE.                                               6     Data Set Ready (DSR): (From Modem)                                             In synchronous modes, this signal indicates the                                line status of the modem. The ON condition of                                  this line indicates that the modem is connected                                to the telephone line (OFF-HOOK) and is capable                                of transmitting and receiving data signals.                                    Both DSR and CTS are required to be ON to                                      transmit data.                                                           7     Signal Ground (SG):                                                            Common ground reference point for all interface                                circuits.                                                                8     Carrier Detect (CXR): (From Modem)                                             Informs the DTE that the modem is receiving a                                  data signal suitable for demodulation.                                   9     Testing Voltage (+V): (V = 12.5 ± 2.5 V)                             10     Testing Voltage (-V): (V = 12.5 ± 2.5 V)                                    These signals provide test points to verify the                                presence of power in the modem.                                         11     No Connection                                                           12     No Connection                                                           13     No Connection                                                           14     No Connection                                                           15     Serial Transmit Clock (SCT): (From Modem)                                      This digital interface line is associated with                                 the high or medium speed synchronous format when                               the transmit clock is set for internal timing.                                 The signal on the SCT is a square wave and is                                  used to provide the DTE with a signal element of                               the transmitted data (TXD) circuit. This signal                                is turned OFF when in asynchronous mode and                                    turned ON when in synchronous mode. The first                                  signal element of the transmitted data signal                                  should be presented by the DTE on a positive                                   (OFF to ON) transition of SCT which occurs after                               the CTS circuit has turned ON. The transmitted                                 data is sampled by the modem on negative transi-                               tions of SCT.                                                           16     No Connection                                                           17     Serial Receiver Clock (SCR): (From Modem)                                      This interface circuit is associated with the                                  synchronous format in the high or medium speed                                 mode. The squarewave signal on this circuit is                                 used to provide the DTE with receiver timing                                   information for the RXD circuit. This signal is                                turned OFF when in Async mode and turned ON when                               in Sync mode. The ON to OFF (negative-going)                                   transition on circuit SCR indicates the center                                 of each signal element on the RXD circuit.                              18     No Connection                                                           19     No Connection                                                           20     Data Terminal Ready (DTR): (To Modem)                                          Control signal used to prepare the modem for                                   connection to the communications channel and                                   maintain the connection once established. In                                   automatic answering applications, the modem will                               connect to the line upon receipt of the trailing                               edge of the ringing signal if DTR is ON. DTR                                   may be forced on internally regardless of                                      interface voltage by programmable option. DTR                                  must be turned ON for the modem to automatically                               originate or answer a call.                                             21     No Connection                                                           22     Ring Indicator (RI): (From Modem)                                              The ON condition of this line indicates that a                                 ringing signal is being received by the modem.                                 The ON condition is approximately coincident                                   with the ON segment of the ringing cycle. When                                 the telephone line is OFF-HOOK, or when ringing                                stops, the RI line will turn OFF.                                       23     No Connection                                                           24     External Serial Transmit Clock (SCTE) (To Modem)                               Synchronous operation requires signals on this                                 line to provide the modem transmitter with                                     signal element timing information from the                                     terminal when the external transmitter timing                                  strap option is selected. The ON to OFF transi-                                tion of this circuit should nominally indicate                                 the center of each signal element on the TXD                                   circuit.                                                                25     No Connection                                                           ______________________________________                                    

The modem operates in five basic states: Idle, Data, Dialing, Interactive, and Test. These states can be entered by various commands from the Data Terminal Equipment (DTE), the modem front-panel keyboard, or through automatic operation.

The Idle State is the power-up state of the modem. Pressing the /RESET/ key at any time will return the modem to this state. When in the Idle State, the modem is ON HOOK, and will automatically answer an incoming telephone call. It is also prepared to respond to front panel or DTE comments. A phone plugged into the rear panel "TelSet" jack is connected to the phone line. The Idle state is entered from the Data state on loss of DTR or receipt of the on line disconnect code, loss of received carrier in 212 or 103 mode, or a specified number of consecutive unanswered link requests in 9600 mode. It is also entered from the Interactive State upon expiration of the activity timer or when the Idle Command is issued.

The Data State is the on-line communications state of the modem. This state is entered from the Idle state through the auto answer function in response to a ringing signal on the phone line or when the /DATA/ or /ANS/ keys are pressed. The Data state is entered from the Dialing state at the completion of any log-on sequences. The modem is equipped to automatically detect that a connection has been established with another 9600VP, a 212A or 103. The modem will automatically identify a remote 9600VP. There are four types of modem handshakes and one error control handshake.

In asynchronous Originate mode, the modem attempts its proprietary handshake designed to identify another 9600 VP. If this handshake fails, the modem automatically attempts a 212A handshake. If this fails, the modem attempts a 103 handshake, if this fails, the modem reports "failed call" and disconnects the line. The auto answer mode, the 9600VP attempts its own 9600VP handshake first. If this fails, a 212A handshake is attempted. If this fails, the modem attempts a 103 handshake, and if this fails, the modem disconnects the line. No call progress messages occur on the auto answer side.

In the synchronous originate and answer modes, the

modem attempts a proprietary handshake at 9600, 7200 or 4800 bps as indicated by the speed key LED. The 1200 bps synchronous handshake is the Bell 212A standard.

An error control protocol is entered by completing the proprietary 9600VP asynchronous handshake (212A handshake with scrambled SPACE) with another 9600VP. The Error Control Mode provides for synchronous data packets operation and enables selective ARQ, dynamic fallback/fallforward, and data compression with an outstanding packet window of 12.

In the Interactive state, commands are issued to the modem to control its operation or to configure its operating characteristics. There are two modes within this state, the terminal interactive mode and the front panel interactive mode. The modem stores the last interactive mode, and uses this memory in order to respond appropriately for auto answering. Commands and response are transmitted over the RS232 leads to the modem. There are two versions of this mode available. (1) The Vadic interactive mode and (2) the "AT" command mode.

The Vadic interactive mode is entered from the Idle state when the characters (!E)(CR) are received from the DTE. If a call is initiated from the interactive mode, and you receive loss of received carrier, or DTR or receive the On-Line Disconnect code, you leave Interactive Mode and enter Idle Mode. Upon "failed call", you remain in Interactive Mode. You remain in the Vadic Interactive Mode until the two-minute inactivity timeout. The Vadic options take precedence over the "AT" options, and continue to do so in all other modem states (i.e., Idle, Data, Test, etc.)

The "AT" command mode is entered from the Idle state when the characters "AT" are received from the DTE. When in the "AT" command mode, the "AT" mode take precedence over the Vadic mode, and continues to do so in both command and data states. Either the Vadic or the "AT" modes can be selected any time the modem is in the Idle or Command State by sending the appropriate commands to it. Once the "AT" command set is entered, the modem must return to the Command mode before the Vadic Interactive Mode can be entered.

In the front panel interactive mode, commands are issued by pressing the keys on the front panel. The responses are displayed on the DTE.

In the Dialing state the modem executes the dialing instruction stored in its dial-instruction register. The dial command is placed there by the Dial and Dial Stored Number terminal commands as well as by depressing the /REDIAL/ or the /DIAL/ Memory Location front panel keys. The Dialing state is entered from the Idle state by pressing the front panel /DIAL/ (Stored Number Memory Location) and /ENTER/ keys or /REDIAL/ keys. The dialing state is also entered from the Vadic Interactive Mode through the Dial, Dial Stored Number, and Redial Interactive commands. The Vadic dialer sequence may be aborted through the front panel /RESET/ command or by entering any character from the DTE. This state may also be entered

from the AT Interactive mode through the ATD₋₋ (CR) command. The "AT" dialer command may be aborted by sending any character to the modem from the DTE before the call is completed. If dialing is aborted from the DTE or the call fails, the modem returns to the state that invoked the dialer.

While executing the dialing instruction, the 9600VP reports Vadic call progress to the DTE if in Vadic mode. The Vadic call progress messages include: Dialing, Busy!, disconnect, Ringing, No Dial Tone, Answer Tone, Error Control, Selected Speed Unavailable, On-Line, On-Line 300, On Line 1200 and On Line 9600.

In making a call, after dialing the last digit of the phone number portion of the dialing instruction, the modem will wait up to 60 seconds for valid carrier. If valid carrier is not received within this time, a "FAILED CALL" message will be displayed and the modem will return to the state that invoked dialing.

The Test state encompasses the many test functions provided to enable an operator to locate a failure in the data communications link via Analog or Digital Loopbacks. The Test state may be entered from Idle state and Data state though the front panel keys and from Vadic mode or from the Terminal Interactive state through the test commands in Vadic mode only.

The front panel of the modem consists of ten LEDs and a 12-position keypad with eight additional LEDs. The ON/OFF condition of the LEDs refers to the operational state of its respective switch. The keypad has most keys serving dual functions. The /DIAL/ key shifts all keys to their numeric functions. The keys are restored to nonnumeric function by the /ENTER/ key. The /DIAL/ key can only be followed by a one or two digit memory location number of stored phone numbers which is followed by the /ENTER/ key. The /DIAL/ and /REDIAL/ keys cause call progress messages to be put out to the DTE at the speed and parity of the last auto baud. The call progress messages are not sent to the DTE when using the /REDIAL/ or /DIAL/ keys with the synchronous LED ON, nor are they sent when manually originating or answering a call.

The ANS LED indicates the status of the two answer modes, auto answer and manual answer. With Auto Answer /ANS/ key LED ON, the modem will automatically answer the phone line assuming DTR is present or forced. /ANS/ key LED OFF means the modem will not answer the phone. In the manual answer mode, the modem that will be the answer side must have the /ANS/ key LED ON; the originate side modem should have its /ANS/ key LED OFF.

The modem will display the following EIA interface parameters with LED indicators:

EC: ERROR CONTROL LED flashes from ON to OFF. The Error Control LED is ON when the modem is hooked up in error control mode. This LED flashes OFF with each retransmission of data. During diagnostics, the EC LED is normally OFF and flashes on with errors.

TXD: TRANSMIT DATA (flashes when transmitting "DATA").

RXD: RECEIVED DATA (flashes when receiving "DATA").

HS: HIGH SPEED asynchronous: OFF=103, 1200; ON=9600, 7200, 4800 or 2400 bps; synchronous: OFF=1200, ON=9600, 7200, 4800 bps.

CTS: CLEAR TO SEND (ON=CTS raised).

DSR: DATA SET READY (ON - Modem Off-Hook, computer system interface or test modes; OFF=Idle or interactive).

DTR: DATA TERMINAL READY (ON=Automatic Operation Enabled).

RI: RING INDICATOR follows the detected Ring Envelope.

CXR: CARRIER DETECT (ON=Carrier Received or computer system interface).

PWR: POWER (ON=Power ON).

The functions of the front panel key switches are:

    ______________________________________                                         REDIAL  This key places the modem into Interactive Mode                        1       and redials the last number dialed                                             automatically. The call progress messages are                                  put to the DTE at the last auto baud speed and                                 parity. This key can be used to dial when in                                   Sync mode. However, call progress messages are                                 not set to the DTE. When in numeric mode, this                                 key enters the digit 1.                                                DIAL    This command may be issued when the modem is in                        2       the Idle State. This key can be used to dial a                                 memory location and hook up synchronously if the                               SYNC LED is ON. There are no call progress                                     messages sent when the Sync LED is ON. The                                     front panel keys are shifted to numeric and the                                memory address of a dialing instruction (1-15)                                 is keyed in and followed by ENTER to start the                                 dialing. If the Sync LED is OFF, the address                                   prompt and address number as well as the                                       telephone number are displayed on the DTE and                                  dialing beings. The call progress messages:                                    "Dial Tone", "Dialing", "Ringing", "Busy", "On                                 Line"↑, "On Line 300", "On Line 1200", "On Line                          9600", "Ans Tone", "Speed Selected Unavailable",                               "Error Control", "Disconnected", and "Failed                                   Call" are displayed as appropriate. When in                                    numeric mode, this key enters the digit 2.                             ALB     When in the Idle Mode, pressing this key puts                          3       the modem into the Analog Loopback Test Mode,                                  busies out the telephone line and lights the ALB                               LED indicator. When in numeric mode, this key                                  enters the digit 3.                                                    DLB     When the data mode, pressing this key puts the                         4       modem into the digital loopback test mode and                                  lights the DLB LED. In addition the DLB LED                                    will go ON when an RTRT is received. The                                       Digital Loopback Test has two modes. They are                                  Local Digital Loopback, entered when the speed                                 key indicates 300 bps (SPEED key LED OFF) and                                  Remote Digital Loopback, which is conducted at                                 1200 (SPEED key LED red ON). When in numeric                                   mode, this key enters the digit 4.                                     SELF    When in the Data or Test Modes, pressing this                          TEST    key enables the self-test circuitry and lights                         5       the SELF TEST indicator. This circuitry                                        generates and detects a testing pattern and if                                 an error occurs, the EC LED indicator flashes.                                 After self-test is enabled, pressing this key                                  again ends the self-test, while the modem                                      remains in its current mode (Data, ALB, or                                     RDLB). When in Numeric Mode, this key enters                                   the digit 5.                                                           RESET   From any mode, this key activates a hardware                                   reset which causes the modem to go directly into                               the Idle Mode. If the modem was last in Vadic                                  mode, the modem could auto answer the next call.                               If last mode was "AT", then "AT" messages are                                  output.                                                                VOICE   This key puts the modem in either Data or Voice                        DATA    Mode. The modem powers up in Voice Mode. When                          6       the LED is ON, this indicates the modem is                                     attached (OFF HOOK) to the phone line. Pressing                                the key switches the modem to Data Mode, light-                                ing the data LED indicator, and the DSR LED.                                   When in numeric mode, this key enters the digit                                6.                                                                     SPEED   This key selects the speed the modem will                                      attempt to establish a manual connection or                                    test. When dialing from the DTE, the last auto                                 baud speed will be reflected by the SPEED key                                  LED when the modem is in Idle or Interactive                                   mode. The SPEED key reflects the data line                                     speed when on-line. The SPEED key LED light                                    will go off when 300 bps is selected. The LED                                  will go red if 1200 bps is selected and will go                                green if the 9600 bps speed is selected. In                                    synchronous mode, the SPEED key LED light will                                 go OFF when 1200 bps is selected, Red when                                     7200/4800 is selected, and green when 9600 is                                  selected. When in numeric mode, this key enters                                the digit 7.                                                           ANS     Answer Mode Key. The modem powers up in the                            8       Voice (ON-HOOK)/Originate Mode with the ANS                                    key LED is ON. To manually answer a call after                                 it has been established, press the DATA key                                    with the ANS key LED lit and the modem will                                    manual answer. To auto answer, the DTR LED                                     should be ON, Option 4 is set to Code 1 or 3,                                  and the ANS key LED is ON when the modem is ON                                 HOOK. Upon receiving a ring indicator signal,                                  the modem automatically goes OFF-HOOK and sends                                answer tone. When in numeric mode, this key                                    enters the digit 8.                                                    SYNC    From Idle, Interactive, Dialing and Test States,                       9       this key causes the current data format, modula-                               tion, speed and communications mode to toggle                                  between SYNC and Async. The SYNC LED lights                                    when in SYNC mode. This key automatically                                      updates Option 14. Changes in Option 14 auto-                                  matically update this LED after RESET has been                                 depressed. When in numeric mode, this key                                      enters the digit 9.                                                    0       When in numeric mode, this key enters the digit                                0.                                                                     ______________________________________                                    

In view of the description of FIGS. 1-4, a detailed description of the schematic diagrams of FIGS. [5-9] 5a-b, 6a-c, 7a-b, 8a-b and 9a-b is unnecessary. However, to indicate the correspondence between FIGS. 1-4 and [5-9] 5a-b, 6a-c, 7a-b, 8a-b and 9a-b, the following description is provided.

FIGS. 6a-6c corresponds to the diagram of FIG. 2, including the power supply, telephone line interface/hydrid, and received signal paths.

FIGS. [6-9] 6a-c, 7a-b, 8a-b and 9a-b correspond to the diagrams of FIGS. 3 and 4 as follows:

    ______________________________________                                         FIGS. 6a-c         FIGS. 3-4                                                   M33                CPU 80                                                      M18, M25, M34      I/P Latch 86, 88, 90                                        M23, M41, M42      Buffer 82, 84                                               M26                EPROM 94                                                    M49, M22           Address Decode 92                                           M32                MUX 142                                                     FIGS. 7a-b         FIGS. 3-4                                                   M19, M11           RAM 96, 98                                                  M35                RAM 100                                                     M53                Serial I/O 110                                              M48                Timer 160                                                   M54                MUX 164                                                     FIGS. 8a-b         FIGS. 3-4                                                   M10, M13           XMTR/RECR 116                                               M45                DTMF Gen. 122                                               M31, M39           O/P Latch 120, 124                                          M12                Amp 126, 128                                                FIGS. 9a-b         FIGS. 3-4                                                   M5                 O/P Latch 134                                               M8, M52            O/P Latch 132                                               M29, M37           EIA Drivers 130                                             ______________________________________                                    

The following table lists the components used in the circuitry of FIGS. [6-9] 6a-c, 7a-b, 8a-b and 9a-b:

    ______________________________________                                         Part                       Ref.                                                Description                Designation                                         ______________________________________                                         IC,4013B,CMOS DUAL D-FF    M38                                                                            M44                                                 IC,4020B,CHOS 14 STG BIN CNTR                                                                             M9                                                                             M28                                                 IC,74LSO4N,TTL HEX INVERTER                                                                               M15                                                 IC,74LS138N,TTL DECODER/DEMUX                                                                             M22                                                                            M49                                                 IC,74LS02N,TTL GUAD 2-INP NOR                                                                             M46                                                 IC,74LS08N,TTL QUAD 2-INP AND                                                                             M36                                                                            M51                                                 IC,5089,DTMF TONE GENERATOR                                                                               M45                                                 IC,6116P,CMOS 2K × 8 RAM                                                                            M35                                                 IC,74LS21N,TTL DUAL 4-INP AND                                                                             M55                                                 IC,74HCO4N,CMOS HEX INVERTER                                                                              M21                                                                            M47                                                 IC,74HC244N,CMOS OCTAL BUFFER                                                                             M18                                                                            M23                                                                            M25                                                                            M34                                                                            M41                                                 IC, 74HC245 BUFFER         M42                                                 IC,74HC74N,CMOS DUAL D-FF  M40                                                 IC,74HC373N,CMOS OCTAL D LATCH                                                                            M5                                                  IC,74HC273P,CMOS OCTAL D-FF                                                                               M8                                                                             M31                                                                            M39                                                                            M52                                                 IC,TC5564P-1,CMOS RAM 8K × 0                                                                        M11                                                                            M19                                                 IC,74HC153 DUAL 4-INPUT MULTIPLEXER                                                                       M32                                                                            M54                                                 IC,Z80B SERIAL I/O         M53                                                 IC,CTC,Z80B COUNTER TIMER CKT                                                                             M48                                                 IC,Z80B,CPU                M33                                                 IC,74LS38N,TTL 2-INP NAND BFR                                                                             M14                                                 IC,74LS155,TTL DECODER/DEMUX                                                                              M16                                                                            M17                                                 IC,4558,DUAL AMPL NPN & PNP IN                                                                            M2                                                                             M4                                                                             M12                                                                            M29                                                                            M37                                                 IC,1489P,QUAD LINE RECVR   M30                                                 IC,4053B,CMOS 2 CHAN MUX/DEMUX                                                                            M7                                                                             M24                                                                            M27                                                 IC,393N,VOLTAGE COMPARATOR M6                                                  IC, DUAL JFET OP AMP, 353N M43                                                                            M50                                                 IC,SSI262,212A CHIP        M13                                                 IC,SSI261,212A CHIP        M10                                                 DIODE, SILICON, GP 1N4148  CR3                                                                            CR8                                                                            CR9                                                                            CR13                                                                           CR15                                                                           CR39                                                DIODE, SILICON, SCHOTTKY, 1N6263                                                                          CR11                                                                           CR12                                                LED, HIGH EFFICIENCY, RED  CR19                                                                           CR35                                                LED, BI-COLOR,RED/GREEN    CR36                                                DIODE, GER, IN270          CR14                                                                           CR37                                                DIODE, ZENER 5.6V 5%, 1N752A                                                                              CR10                                                DIODE, ZENER, 5.1MW, +-5%  CR18                                                DIODE, SI ZENER, 27V, 1N5254                                                                              CR1                                                                            CR2                                                 DIODE, SILICON ZENER, 6.2V, 1N4735                                                                        CR6-                                                                           CR7                                                 DIODE, SILICON ZENER, 6.8V, 1W, 5%                                                                        CR17                                                RECT, SILICON, 1N4005      CR16                                                XSTR, NPN, 2N3904          Q2-                                                                            Q3                                                  XSTR,ARRAY, QUAD N-P-N SILICON                                                                            M20                                                 PXSTR, OPTO-ISOLATOR, 4N35 M1                                                  RELAY, ELECTROMECHANICAL   K1                                                  FERRIT BEAD,A.138,B2.75,C.35                                                                              FB1                                                 XTAL, QTZ, 3.686400 HNZ    Y4                                                  XTAL, QTZ, 5.5296 MHZ      Y2                                                  RES, CARD, 1.0K, 1/40, 5%  Y3                                                                             R40                                                                            R46                                                                            R59-                                                                           R60                                                                            R62-                                                                           R63                                                                            R68                                                                            R84-                                                                           R85                                                                            R94-                                                                           R98                                                                            R100                                                                           R107                                                                           R120                                                                           R126-                                                                          R128                                                                           R132                                                RES, CARB, 100K, 1/4W, 5%  R6                                                                             R9                                                                             R42                                                                            R74                                                 RES, CARB, 1.0M. 1/4W, 5%  R56                                                                            R64                                                                            R91                                                 RES, CARB, 1.2K, 1/4W, 5%  R44                                                 RES, CARB, 200K, 1/4W, 5%  R111                                                RES, CARB, 2.0M, 1/4W, 5%  R88                                                 RES, CARB, 20.M, 1/4W, 5%  R8                                                  RES, CARB, 220., 1/4W, 5%  R57                                                                            R73                                                                            R92                                                                            R99                                                 RES, CARB. 2.4K, 1/4W, 5%  R23                                                 RES, CARB, 2.7K, 1/4W, 5%  R31                                                                            R80                                                 RES, CARB, 27K, 1/4W, 5%   R7                                                                             R35                                                                            R66                                                                            R72                                                                            R78                                                                            R79                                                                            R90                                                                            R103                                                                           R106                                                                           R121                                                                           R129                                                                           R130                                                RES, CARB, 3.0K, 1/4W, 5%  R45                                                                            R58                                                 RES, CARB, 300K, 1/4W, 5%  R110                                                                           R112                                                RES, CARB, 2.0K, 1/4W, 5%  R32                                                                            R34                                                 RES, CARB, 360, 1/4W, 5%   R89                                                 RES, CARB, 470, 1/4W, 5%   R86                                                                            R87                                                 RES, CARB, 4.7K, 1/4W, 5%  R33                                                                            R65                                                                            R69                                                                            R71                                                                            R93                                                                            R101                                                                           R102                                                                           R131                                                                           R108                                                RES, CARB, 560., 1/4W 5%   R41                                                 RES, CARB, 680., 1/4W, 5%  R30                                                 RES, CARB, 2.0K, 1/2W, 5%  R38                                                                            R39                                                 RES, CARB, 5.6K, 1/2W, 5%  R3                                                  RES, FILM, 383.0, 1/8W, 1%, TC-K                                                                          R17                                                 RES, FILM, 392.0, 1/8W, 1%, TC-K                                                                          R18                                                 RES, FILM, 976.0, 1/8W, 1%, TC-K                                                                          R19                                                 RES, FILM, 1.21K, 1/8W, 1%, TC-K                                                                          R115                                                RES, FILM, 1.69K, 1/8W, 1%, TC-K                                                                          R122                                                RES, FILM, 2.00K, 1/8W, 1%, TC-K                                                                          R16                                                 RES, FILM, 3.32K, 1/8W, 1%, TC-K                                                                          R28                                                 RES, FILM, 3.65K, 1/8W, 1%, TC-K                                                                          R119                                                RES, FILM, 5.90K, 1/8W, 1%, TC-K                                                                          R11                                                 RES, FILM, 8.66K, 1/8W, 1%, TC-K                                                                          R12                                                                            R81                                                 RES, FILM, 8.87K, 1/8W, 1%, TC-K                                                                          R25                                                                            R26                                                 RES, FILM, 9.31K, 1/8W, 1%, TC-K                                                                          R118                                                RES, FILM, 10.0K, 1/8W, 1%, TC-K                                                                          R24                                                                            R76                                                                            R77                                                                            R83                                                 RES, FILM, 17.4K, 1/8W, 1%, TC-K                                                                          R13                                                 RES, FILM, 21.5K, 1/8W, 1%, TC-K                                                                          R54                                                 RES, FILM, 33.2K, 1/8W, 1%, TC-K                                                                          R125                                                RES, FILM, 42.2K, 1/8W, 1%, TC-K                                                                          R123                                                RES, FILM, 78.7K, 1/8W, 1%, TC-K                                                                          R51                                                 RES, FILM, 100.K, 1/8W, 1%, TC-K                                                                          R113                                                                           R114                                                                           R116                                                                           R117                                                RES, FILM, 210.K, 1/8W, 1%, TC-K                                                                          R124                                                RES, FILM, 301.K, 1/8W, 1%, TC-K                                                                          R15                                                 RES, FILM, 464.K, 1/8W, 1%, TC-K                                                                          R14                                                 RES NET, SIP, 27KX9        RN3                                                                            RN10                                                RES. NET, 1K, 1/3W X9      RN2                                                 RES. NET, DIGITAL SYS REESET CKT.                                                                         RN1                                                 CAP., MYLAR .1UF, 50V, 5%  C5                                                                             C25                                                                            C43                                                 CAP, POLYEST, RDL., .22MF, 100V, 5%                                                                       C6                                                                             C32                                                 CAP, POLYEST, RDL., 033UF, 250V, 5%                                                                       C9                                                                             C18                                                 CAP, POLYEST, RDL., .01UF, 250V, 5%                                                                       C7                                                  CAP, MYLAR, .47UF, 250V, 10%                                                                              C1                                                  CAP, MYLAR, .47UF, 63V, 10%                                                                               C103                                                CAP, CER, .1UF, 50V, 10%   C111                                                                           C116                                                CAP, CER, .1UF, 50V, 20%   C34                                                                            C83                                                                            C108                                                                           C109                                                                           C150                                                                           C152                                                                           C201                                                                           C240                                                                           C244                                                                           C261                                                                           C116                                                CAP, CER, 27PF, 63V, 5%    C68                                                 CAP, CER, 33PF, 63V, 5%    C69                                                                            C90                                                                            C119                                                CAP, CER, 47PF, 63V, 5%    C120                                                CAP, CER, 82PF, 63V, 5%    C118                                                CAP, CER, .01UF, 50V, 10%  C104                                                                           C105                                                CAP, CER, .1UF, 50V, 10% X7R                                                                              C110                                                CAP, TANT, 3.3UF, 15V, 5%  C27                                                 CAP, ELO, 100UF, 16V, 20%  C30                                                                            C38                                                 CAP, ELO, 25V, 20UF, +75%, -10%                                                                           C23                                                                            C24                                                 CAP, CER, 220PF, 100V, 10% C106                                                CAP, CER, 390PF, 100V, 10% C61                                                                            C73                                                                            C85                                                 CAP, CER, 330PF, 100V, 10% C117                                                CAP, CER, 1000PF, 100V, 10%                                                                               C26                                                 CAP, CER, NPO, 100PF, 100V, 5%                                                                            C107                                                DIODE, ZENER, 5.1V, 1W, 5% CR38                                                CONN, SOCKET, 5 POS, DIN   P1                                                  CONN, HEADER, 4 PIN        P2                                                  XFMR, SWITCHED NTWK, 600-600 OHM                                                                          T1                                                  SUPPRESSOR, TRANSIENT, 6V +-10%                                                                           TS1                                                 CAP, CER, 1500PF, 100V, 10%                                                                               C153                                                RES, CARB, 10K, 1/4W, 5%   R133                                                RES, FILM, 82.5K, 1/8W, 1% R82                                                 ______________________________________                                    

Referring to FIG. 10, there is presented a diagram illustrating the connect sequence for the modem of FIGS. 1-4 and [5-9] 5a-b, 6a-c, 7a-b, 8a-b and 9a-b. The diagram illustrates the transmitted and received signals for both an originate modem and an answer modem. When the originating modem initiates a call, the remote central office sends a ring signal to the answer modem which is detected on the ring indicator RI line. The answer modem goes off-hook and transmits an answer tone of 2225 Hz. This tone is received by the originate modem and after 455 milliseconds, the originate modem begins sending a carrier modified by logic 0 data, referred to as scrambled zeros for 100 milliseconds followed by scrambled ones. After approximately 50 to 100 milliseconds of scrambled zeros being received, the answer modem identifies that the originating modem is compatible and transmits scrambled zeros back to the originate modem. The originate modem then identifies that the answer modem is compatible.

The modems then exchange link parameters for error control. The originate modem first sends approximately 23 bytes of link parameter information. The answer modem receives the link parameters and if any parameters need to be changed, it sends update link parameters to the originate modem. After the update link parameters are exchanged, the CXR and CTS lines are turned on at both modems.

When enough data accumulates in the transmit data buffer at either end to go high speed, the modems exchange control frames. Both modems then go into a squelch for a period of time, and the transmitter of the corresponding modem begins sending data at 9600 bps. At the end of data transmission, the modems squelch and 1200 bps, full-duplex transmission is resumed and acknowledgments sent for frames received. The speed is maintained until it is time for either modem to transmit data to the other modem at higher speed. At that time, both modems squelch, and thereafter the operation continues as described above. Data transmission proceeds as required by the data transmission demands of the data terminals for the modems.

Referring next to FIG. 11 there is a flowchart of the data transmission routine followed by the modem operating as an originate modem. At the start of operation, the modem performs the originate/answer connect sequence by calling and establishing a link with the answer modem in a lower-speed, full-duplex mode. There follows an exchange of link parameters with the remote answer modem and confirmation of agreement on the parameters. The modem then enables the sending and receiving of data to the data terminal equipment. If the link parameters do not agree, the modem disconnects.

When the sending and receiving of data begins, a check is made for data from the data terminal. If data is being received from the data terminal, it is compressed and put into the transmit data buffer. A check is made to see whether there is enough data to go higher-speed, half-duplex. If so, the modem sets up the higher-speed, half-duplex link and data is transmitted in that mode. If there is not enough data to go higher-speed, data is transmitted at lower-speed in the full-duplex mode.

At the end of data transmission in the higher-speed mode, the originate modem asks the remote modem to go lower-speed, full-duplex and to send an acknowledgement. The modems establish the lower-speed, full-duplex link. The modem then checks for acknowledgment from the remote modem. If the acknowledgement does not come within a prescribed time out period, the modem initiates a recovery to establish the lower-speed link. If the acknowledgment is received, the modem determines whether the remote modem has requested higher-speed operation. If so, the originate modem acknowledges the request for higher-speed and establishes the half-duplex link and sets up in a receive mode. There continues to be monitoring for a request to go lower-speed. When the request is received, the modem establishes the lower-speed, full-duplex link and sends an acknowledgement that all data frames have been received. The received data frames are decompressed and sent to the data terminal. The originate modem then returns to check for any data from the data terminal. The diagrammed sequence continues until completion of the required data communication task.

FIG. 12 flowcharts an operational sequence of the modem involving data communication that automatically changes between speeds of transmission based upon data transmission demand during a communication and upon the quality of the data transmissions. When the modem begins transmitting, it checks for data from the data terminal. The data for transmission is compressed and stored in the transmit data buffer. Next, there is evaluation of whether any data is waiting for retransmission. If so and there is enough to go higher-speed, the modem sends control frame information to the remote modem to go higher-speed. The higher-speed, half-duplex link is set up and transmission of data begins. At the conclusion of data transmission, a control frame is sent requesting the remote modem to go into the lower-speed mode. The modem then awaits reception of an acknowledgement. If the acknowledgement does not come within a prescribed time out period, the modem initiates recovery by establishing the link and reentering the transmit sequence. If the request to go lower-speed is acknowledged, the routine goes back to the beginning of the transmit sequence.

If there is no acknowledgement that all data frames were received properly, there is consideration of whether a predetermined number of data frames have been transmitted at higher-speed (e.g. 25 frames). If so, there is a check to determine whether the transmitted data frames included any retransmissions. If there was retransmission of any data frame for predetermined number of times (e.g. 8 times), there is a calculation of the retransmit frame ratio. Based upon the calculated ratio, a determination is made whether the quality of the data transmission indicates qualification for a fallback in speed. If there had been retransmission of any data frame at least the predetermined number of times, and if the modem is linked in the lowest fallback speed, then the modem disconnects. If the link is not in the lowest fallback speed, the modem sets up the link for one step lower in speed and reenters the transmit sequence.

If the evaluation to determine whether a predetermined number of preceding transmitted frames included any retransmitted data indicates that none were retransmitted frames, the routine makes an evaluation for qualification to fallforward to a higher speed. If the qualification is not met, the transmit sequence is reentered at the same speed. But if the data transmission quality qualifies for a fallforward in speed, and the link is not already in the highest speed, the modem sets up the link for a one step higher speed of transmission.

The routine in FIG. 12 illustrates the ability of the modem to adapt its speed to the quality of the telephone line. As indicated, the modem can either fallback to a lower speed or fallforward to a higher speed. In general, to determine the quality of the line, the processor of the modem constantly monitors the number of errors in data transmission as reflected by the number of retransmitted data frames. If the number of retransmissions is high, indicating too many errors are encountered and line quality is poor, the modem drops down to the next lower speed until an acceptable reduction in errors in transmission is achieved. If the line quality improves and the number of errors is reduced, the modem will automatically fallforward to the next higher speed.

FIG. 13 provides a listing of the program ROM contents for the modem implementation of FIGS. [5-9] 5a-b, 6a-c, 7a-b, 8a-b and 9a-b. . This program includes the routines diagrammed in FIGS. 10-12 as well as other operations for the modem described above in FIGS. [5-9] to 5a-b, 6a-c, 7a-b, 8a-b and 9a-b.

The foregoing description of the present invention has been directed to particularly preferred embodiments for purposes of explanation and illustration. It will be apparent, however, to those skilled in this art that modifications and changes may be made in the apparatus and operation described without departing from the scope of the invention. 

What is claimed is:
 1. Apparatus for providing communication of data over a telephone line, comprising:a transmitter receiving frames of data, for placing a transmit signal on a telephone line; said transmitter being selectively operable to transmit data at discrete data rates in response to a speed control command; a processor for monitoring the transmission of data frames to determine data transmission errors, for selectively effecting the retransmission of data frames having errors in their transmission, and for producing the speed control command to select the data rate of the transmitter; and said processor causing the data transmission rate to fallback to a lower data rate or to fallforward to a higher data rate based upon the number of retransmitted data frames.
 2. A modem for providing asynchronous communication of data over a telephone line between a local data terminal and a remote modem, comprising:a transmitter selectively operable at discrete data rates for transmitting frames of data and control information to the remote modem; a receiver, selectively capable of receiving data and control frames transmitted from the remote modem in discrete data rates; a controller processor, for selecting the data rate of said transmitter and receiver, the processor controlling the transmitter and receiver during a connect sequence with the remote modem and to thereafter effect an exchange of a data and control frames with the remote modem, the processor evaluating received control frames, for identification of frames sent to the remote modem which were found to contain errors and effecting the retransmission of an identified data frame; the processor maintaining a count of the number of times a data frame is retransmitted, and when the count exceeds a predetermined maximum value, the processor effects a fall-back in the transmission speed of the transmitter to the next-lower data rate, the processor further calculating the ratio of retransmitted frames to once-transmitted frames among the plurality of frames transmitted to the remote modem, and when the ratio is within a predetermined range, the processor effects a fall-forward in the transmission speed of the transmitter to the next-higher discrete data rate.
 3. The modem of claim 2, wherein the processor disconnects the communication link with the remote modem in the event the count exceeds the predetermined maximum value when the modem is transmitting at the lowest of the discrete data rates.
 4. A method of communicating information via a telephonic line between a first modem and a second modem, each having a receiver and a transmitter selectively operable in a plurality of discrete data rates and each having a controller processor, the method comprising the steps of:formatting information to be transmitted by the first modem into frames of control information and frames of data; establishing, under control of the controller processors, a communication link on the telephone line between the first and second modems and thereafter transmitting the control frames and data frames to the second modem; determining, in the second modem, whether frames transmitted from the first modem contain errors, and transmitting an acknowledgement to the first modem identifying those frames received by the second modem which contained errors; retransmitting, from the first modem, those frames identified in the acknowledgement as having been received by the second modem with errors; counting, in the first modem, the number of times each frame is retransmitted before being received by the second modem without errors; computing, in the first modem, the ratio of retransmitted frames to once-transmitted frames, among a plurality of frames transmitted from the first modem; effecting a fall-forward in transmitting speed of the first modem and receiving speed of the second modem to the next-highest discrete data rate in the event that said ratio is within a predetermined range; effecting a fall-back in transmitting speed of the first modem and receiving speed of the second modem to the next-lowest discrete data rate in the event that any frame is retransmitted more than a predetermined number of time from said first modem; and effecting a disconnection of communication between the first and second modems in the event that a frame is retransmitted from the first modem more than the predetermined number of times when the first modem is transmitting at its lowest data rate.
 5. The method of claim 4, wherein the step of determining whether frames transmitted from the first modem contain error comprises analysis of error-control information included in said transmitted frames.
 6. The method of claim 4 wherein the steps of effecting a fall-forward and of effecting a fall-back in transmitting speed of the first modem and receive speed of the second modem comprises:transmitting, from the first modem to the second modem, a control frame containing information in the form of a request for the desired speed change, and thereafter transmitting from the second modem to the first modem a control frame containing information in the form of an acknowledgement of the request for the speed change. 